package fr.utt.lo02.CrazyEights.model.strategies;

import fr.utt.lo02.CrazyEights.model.cards.Card;
import fr.utt.lo02.CrazyEights.model.cards.CardSuit;
import fr.utt.lo02.CrazyEights.model.players.Player;

public interface Strategy {
	/**
	 * This method choose the Card that player would most likely
	 * play according to the Strategy chosen & his hand
	 * @param player the player to work on.
	 * @return a Card
	 */
	public Card play(Player player);
	
	/**
	 * This method choose the Suit that player would most likely
	 * play according to the Strategy chosen & his hand
	 * @param player the player to work on.
	 * @return a CardSuit
	 */
	public CardSuit chooseSuit(Player player);
}
